import Vue from 'vue'
import Vuex from 'vuex'

//导入日志插件
import createLogger from 'vuex/dist/logger'
//导入持久化插件
// import createPersistedState from "vuex-persistedstate";

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    // collectionList:[]
    // 手动读取localStorage中的数据：使用三目运算符判断本地存储中是否有点存储vuex数据
    collectionList: localStorage.getItem('vuex') ? JSON.parse(localStorage.getItem('vuex')) : []
  },
  getters: {
  },
  mutations: {
    // 收藏
    collection(state,payload){
        state.collectionList.push(payload)

        // 手动存储vuex数据到本地存储
        localStorage.setItem("vuex", JSON.stringify(state.collectionList))
    },
    // 取消收藏
    cancel_collection(state,payload){
      //findIndex 查找符合条件项返回下标
      var index = state.collectionList.findIndex((item)=>{
        return item.mtWmPoiId == payload.mtWmPoiId
      })
      if( index != -1){
        state.collectionList.splice(index,1)
      }

      // 手动存储vuex数据到本地存储
      localStorage.setItem("vuex", JSON.stringify(state.collectionList))
    }

  },
  actions: {
  },
  modules: {
  },
    //配合其他插件 管理vuex中state内部的数据
    // plugins:[ createLogger(), createPersistedState() ]
    plugins:[ createLogger(), ]

})
